#ifndef SALEBASE_H
#define SALEBASE_H

#include<string>
#include"windowInfo.h"
#include"../dao/daobase.h"
#include<QPixmap>
using std::string;

//售卖类型的基类
class SaleBase:public DaoBase
{
public:
    SaleBase(){}

    virtual ~SaleBase(){}

    /*
     * 获取用户选择规格重量等后的应付价格
     **/
    virtual double getPayable(){return 0;};


    /*
     * 获取售卖类型
     */
    int getClassType(){return class_type;}

    //转换成字符串描述
    virtual string toString(){return name+"\t"+QString::number(price).toStdString()+"/"+unit ; }

    virtual void selectOne(){};

    virtual void del(){};

    virtual void insert(){};




public:
     int class_type=CLASS_SALEBASE;//售卖类型

public:
    int id;//食物id
    int window_id;//所属窗口id
    string name;//食物名称
    double price;//食物单价
    int status;//食物状态 0：售卖中 1：停售 2：审批中
    string diningType;//餐饮类型
    string unit;//食物单位
    QPixmap image;//食物图片
    string desciption;//食物描述

public:

    const static int STATUS_onSale=0;//售卖中
    const static int STATUS_haltSale=1;//停售
    const static int STATUS_exam=2;//审批中

public:
    const static int CLASS_SALEBASE=0;//基类
    const static int CLASS_SALEUNIT=1;//单个售卖
    const static int CLASS_SALEWEIGHT=2;//重量售卖
    const static int CLASS_SALESETMEAL=3;//套餐售卖
    const static int Class_SIDEDISH=4;//配菜
};

#endif // SALEBASE_H
